home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / u_man / cat1 / X11 / xscope.z / xscope
Encoding:
Text File  |  2002-10-03  |  10.8 KB  |  265 lines

  1.  
  2.  
  3.  
  4.      XXXXSSSSCCCCOOOOPPPPEEEE((((1111))))           XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((8888 AAAAuuuugggg 1111999999991111))))           XXXXSSSSCCCCOOOOPPPPEEEE((((1111))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.           xscope - X Window System Protocol Monitor
  10.  
  11.      SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.           xxxxssssccccooooppppeeee [ options ] ...
  13.  
  14.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  15.           _x_s_c_o_p_e is a program that monitors connections between an X
  16.           server and a client.  _x_s_c_o_p_e prints to stdout the contents
  17.           of each request, reply, error, or event that is communicated
  18.           between the server and client.  This information can be
  19.           useful in debugging and performance tuning of X servers and
  20.           clients.
  21.  
  22.           _x_s_c_o_p_e attaches to the X server as if it were a client.  By
  23.           adjusting the host and/or display number, the client can be
  24.           made to attach to _x_s_c_o_p_e instead of the X server.
  25.  
  26.                server <-----> xscope <-----> client
  27.  
  28.           All bytes from the server are sent to _x_s_c_o_p_e which sends
  29.           them on to the client.  All bytes from the client are sent
  30.           to _x_s_c_o_p_e which passes them on to the server.  _x_s_c_o_p_e is
  31.           transparent to both the server and the client.
  32.  
  33.      OOOOPPPPTTTTIIIIOOOONNNNSSSS
  34.           ----dddd<<<<ddddiiiissssppppllllaaaayyyy>>>>
  35.                     Defines the display number.  The display number is
  36.                     added to the input and output port to give the
  37.                     actual ports which are used by _x_s_c_o_p_e.
  38.  
  39.           ----hhhh<<<<hhhhoooosssstttt>>>>  Determines the host that _x_s_c_o_p_e will use to find
  40.                     the server.
  41.  
  42.           ----iiii<<<<iiiinnnnppppuuuutttt----ppppoooorrrrtttt>>>>
  43.                     Specify the port that _x_s_c_o_p_e will use to take
  44.                     requests from clients (defaults is 1).  For X11,
  45.                     this port is automatically biased by 6000.
  46.  
  47.           ----oooo<<<<oooouuuuttttppppuuuutttt----ppppoooorrrrtttt>>>>
  48.                     Determines the port that _x_s_c_o_p_e will use to
  49.                     connect to the server (defaults is 0). For X11,
  50.                     this port is automatically biased by 6000.
  51.  
  52.           ----qqqq        Quiet output mode.  Gives only the names of
  53.                     requests, replies, errors, and events, but does
  54.                     not indicate contents.
  55.  
  56.           ----SSSS<<<<zzzzeeeerrrroooo----oooorrrr----oooonnnneeee>>>>
  57.                     Run with SIGUSR1 triggered tracing.  Following the
  58.                     option with a zero begins _x_s_c_o_p_e not tracing;
  59.                     following the option with a one begins _x_s_c_o_p_e
  60.  
  61.  
  62.  
  63.      Page 1                                          (printed 10/3/02)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      XXXXSSSSCCCCOOOOPPPPEEEE((((1111))))           XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((8888 AAAAuuuugggg 1111999999991111))))           XXXXSSSSCCCCOOOOPPPPEEEE((((1111))))
  71.  
  72.  
  73.  
  74.                     tracing.  Send a SIGUSR1 signal to the xscope
  75.                     process to toggle tracing.
  76.  
  77.           ----vvvv<<<<pppprrrriiiinnnntttt----lllleeeevvvveeeellll>>>>
  78.                     Determines the level of verbosity which _x_s_c_o_p_e
  79.                     will provide.  The print-level can be 0 (same as
  80.                     quiet mode), 1, 2, 3, 4.  The larger numbers give
  81.                     more and more output.  For example, a successful
  82.                     setup returns a string which is the name of the
  83.                     vendor of the X server.  At level 1, the explicit
  84.                     field giving the length of the string is
  85.                     suppressed since it can be inferred from the
  86.                     string.  At level 2 and above the length is
  87.                     explicitly printed.
  88.  
  89.      OOOOPPPPEEEERRRRAAAATTTTIIIIOOOONNNN
  90.           When running with _x_s_c_o_p_e, three processes are involved,
  91.           potentially all on different machines:
  92.  
  93.           _X _s_e_r_v_e_r
  94.                The X server will run on machine (or host) "A", display
  95.                "B".  ("A" is a machine name; "B" is a display number).
  96.  
  97.           _x_s_c_o_p_e
  98.                _x_s_c_o_p_e must be told where the X server is (what machine
  99.                and what display), and, in addition, the _p_o_r_t-_n_u_m_b_e_r on
  100.                which to listen for X clients.  The options for _x_s_c_o_p_e
  101.                are "-h<Xserver-host>" and "-d<display-number>".  In
  102.                this example, -hA and -dB.  Typically the _d_i_s_p_l_a_y-
  103.                _n_u_m_b_e_r is not given.  _x_s_c_o_p_e will not try to  connect
  104.                to the server until the client connects to _x_s_c_o_p_e.
  105.  
  106.           _X _c_l_i_e_n_t
  107.                The client should connect to _x_s_c_o_p_e rather than to the
  108.                server.  To avoid changing the code for the client,
  109.                _x_s_c_o_p_e listens on the same port as the server for
  110.                connecting clients.  If the server and _x_s_c_o_p_e are on
  111.                different machines, this works well.  However, if the
  112.                server and _x_s_c_o_p_e are on the same machine, this creates
  113.                a port conflict.  To resolve this conflict, _x_s_c_o_p_e can
  114.                be given a different input or output port number, as
  115.                necessary, to avoid the port that the server is
  116.                listening to.  The client must connect to this offset
  117.                port number.  The input port for _x_s_c_o_p_e is set by
  118.                -_i<_p_o_r_t-_n_u_m_b_e_r>; the output port is set by -_o<_p_o_r_t-
  119.                _n_u_m_b_e_r>.  The default input port is 1; the default
  120.                output port is 0.  These ports are offset by the X11
  121.                base (6000) and the display number.  The client
  122.                attaches to _x_s_c_o_p_e by changing its display number by
  123.                the port offset.
  124.  
  125.      EEEEXXXXAAAAMMMMPPPPLLLLEEEESSSS
  126.  
  127.  
  128.  
  129.      PPPPaaaaggggeeee 2222                                          ((((pppprrrriiiinnnntttteeeedddd 11110000////3333////00002222))))
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      XXXXSSSSCCCCOOOOPPPPEEEE((((1111))))           XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((8888 AAAAuuuugggg 1111999999991111))))           XXXXSSSSCCCCOOOOPPPPEEEE((((1111))))
  137.  
  138.  
  139.  
  140.           xxxxssssccccooooppppeeee ----hhhhbbbbaaaaggggeeeellll ----iiii0000
  141.  
  142.           The X server would run on "bagel", display 0 (the default).
  143.           _x_s_c_o_p_e and the client would both be on "cleo".  The client
  144.           program would connect to "X" on "cleo:0", and would be
  145.           attached to _x_s_c_o_p_e, which would then attach to the server on
  146.           "bagel:0".
  147.  
  148.                server (bagel:0) <-----> xscope -hbagel -i0 <----->
  149.           client -d cleo:0
  150.  
  151.           xxxxssssccccooooppppeeee ----iiii1111
  152.  
  153.           Here is a case where all three processes would run on
  154.           "cleo".  _x_s_c_o_p_e would listen on port 6001 (which is display
  155.           1 for X11).  The client would attach to the server on
  156.           "cleo:1", and _x_s_c_o_p_e would connect through to the server on
  157.           "cleo:0".
  158.  
  159.                server (cleo:0) <-----> xscope -i1 <-----> client -d
  160.           cleo:1
  161.  
  162.           xxxxssssccccooooppppeeee ----hhhhcccclllleeeeoooo ----dddd0000 ----oooo0000 ----iiii1111 ----vvvv4444
  163.  
  164.           This example is similar to the previous one, and would have
  165.           _x_s_c_o_p_e communicate with an X server on host ``cleo'',
  166.           display 0.  _x_s_c_o_p_e itself would be available on the current
  167.           host as display 1 (display of 0 plus the 1 of -i1).  Verbose
  168.           level 4.
  169.  
  170.                server (cleo:0) <-----> xscope -hcleo -d0 -o0 -i1 -v4
  171.           <-----> client -d cleo:1
  172.  
  173.           xxxxssssccccooooppppeeee ----dddd1111 ----oooo1111 ----iiii3333 ----qqqq
  174.  
  175.           The X server for the current host, display 2 (1 for -d1 plus
  176.           1 for -o1) would be used by _x_s_c_o_p_e, which would run as
  177.           display 4 (1 for -d1 plus 3 for -i3).  Quiet mode (verbose
  178.           level 0).
  179.  
  180.                server (unix:1) <-----> xscope -d1 -o1 -i3 -q <----->
  181.           client -d unix:4
  182.  
  183.      LLLLIIIIMMMMIIIITTTTAAAATTTTIIIIOOOONNNNSSSS
  184.           The X Version 11 and PEX Version 5 Protocols are the only
  185.           protocols recognized.
  186.  
  187.           The command line arguments for specifying the real X server
  188.           should be changed to be more consistent with the style since
  189.           X11R3.
  190.  
  191.           The Imakefile may be incorrect.
  192.  
  193.  
  194.  
  195.      Page 3                                          (printed 10/3/02)
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.      XXXXSSSSCCCCOOOOPPPPEEEE((((1111))))           XXXX VVVVeeeerrrrssssiiiioooonnnn 11111111 ((((8888 AAAAuuuugggg 1111999999991111))))           XXXXSSSSCCCCOOOOPPPPEEEE((((1111))))
  203.  
  204.  
  205.  
  206.           The builtin atoms have been wired in directly.  A better
  207.           solution is to pick them up from a header file.
  208.  
  209.           There is no code yet to interpret typed commands from the
  210.           keyboard.  It would be possible for a command language at
  211.           the keyboard to create artificial characters to be sent to
  212.           the server or the client as if they were generated  by the
  213.           opposite side, or to dynamically alter requests or replies.
  214.  
  215.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  216.           X(1), X11 and PEX Protocol documents
  217.  
  218.      AAAAUUUUTTTTHHHHOOOORRRR
  219.           James L. Peterson (MCC)
  220.  
  221.           Copyright 1988, MCC
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.      Page 4                                          (printed 10/3/02)
  262.  
  263.  
  264.  
  265.